package environment.dungeons;

/**
 * Een interface die een voorwaarde, opgelegd op een vakje, voorstelt.
 * 
 * @author 	Nathan Bekaert & Philippe de Potter de ten Broeck
 * @version 1.0
 */
public interface SquareConstraint<S extends Square> {

	/**
	 * Controleert of het gegeven vakje voldoet aan de voorwaarde
	 * voorgesteld door de implementatie van deze interface.
	 * 
	 * @param 	square
	 * 			Het vakje dat moet worden gecontroleerd.
	 * @return	True als en slechts als het gegeven vakje de voorwaarde voorgesteld
	 * 			door de implementatie van deze interface, vervult.
	 */
	boolean checkElement(S square);
}